# coding=utf-8

import sys
import os
import re
import shutil


def organize_files(dir_path):
    # 遍历指定目录下所有文件
    for file in os.listdir(dir_path):
        # 归类 mp4 或 rmvb 文件
        if file.endswith(".mp4") or file.endswith(".rmvb"):
            # 提取文件名中的非数字部分作为目录名
            directory_name = re.sub(r'\d+', '', file.split('.')[0])
            directory_name = re.sub(r'第集', '', directory_name)
            
            # 构建目录路径
            directory_path = os.path.join(dir_path, directory_name)
            
            # 如果目录不存在则创建目录
            if not os.path.exists(directory_path):
                print(f"Creating directory {directory_name}\n")
                os.makedirs(directory_path)
            
            # 源文件路径
            source_path = os.path.join(dir_path, file)
            
            # 目标文件路径
            target_path = os.path.join(directory_path, file)
            
            # 移动文件到对应目录中
            print(f"Moving file {file} to directory {directory_name}")
            shutil.move(source_path, target_path)
            
            print(f"Moved file {file} to directory {directory_name}")


# 获取命令行参数，如果没有参数则使用默认目录路径
if len(sys.argv) > 1:
        # 获取第一个参数
    target_dir = sys.argv[1]
    print(f"整理文件目录: {target_dir}")
else:
    target_dir = os.getcwd()

# 调用方法，传入目录路径实现对MP4文件的整理
organize_files(target_dir)